package DAO;

import com.sel.modelo.Disciplina;
import android.content.ContentValues;
import android.content.Context;

public class DisciplinaDAO extends DAOGeneric<Disciplina>
{
    public static final String    TABELA = "disciplina";
    public static final String[] COLUNAS = {"id_disciplina", "nome_disciplina", "curso_disciplina"};  
    public static final String SCRIPT_CRIACAO_TABELA_DISCIPLINA = "CREATE TABLE "+ TABELA +"( " +
                                                                COLUNAS[0] +" INTEGER PRIMARY KEY," +
                                                                COLUNAS[1] +" TEXT UNIQUE NOT NULL," +
                                                                COLUNAS[2] +" TEXT NOT NULL " +
                                                                ");";
    public static final String SCRIPT_DELECAO_TABELA_DISCIPLINA = "DROP TABLE IF EXISTS "+TABELA;
    public static DisciplinaDAO instance;   
    
    public static DisciplinaDAO getInstance(Context context) 
    {
        if(instance == null)
        {
            instance = new DisciplinaDAO(context);
        }
        return instance;
    }
    
    public DisciplinaDAO(Context context) 
    {
        super(context);
    }
    
    @Override
    public String getNomeColunaPrimaryKey() 
    {
        return COLUNAS[0];
    }
    
    @Override
    public String getNomeTabela() 
    {
        return TABELA;
    }
    
    @Override
    public ContentValues entidadeParacontentValues(Disciplina disciplina) 
    {
        ContentValues values = new ContentValues();
        if (disciplina.getId()> 0)
        {
            values.put(COLUNAS[0], disciplina.getId());
        }
        values.put(COLUNAS[1], disciplina.getNome_disciplina());
        values.put(COLUNAS[2], disciplina.getCurso_disciplina());
        return values;
    }
    
    @Override
    public Disciplina contentValuesParaEntidade(ContentValues contentValues) 
    {
        Disciplina disciplina = new Disciplina();
        disciplina.setId(contentValues.getAsInteger(COLUNAS[0]));
        disciplina.setNome_disciplina(contentValues.getAsString(COLUNAS[1]));
        disciplina.setCurso_disciplina(contentValues.getAsString(COLUNAS[2]));
       return disciplina;
    }
}
